import axios from 'axios'
axios.defaults.withCredentials = true;
import { ElMessageBox } from 'element-plus'

// 创建通用 axios 配置
let instance = axios.create({
  responseType: "x-www-form-urlencoded",
  headers: { 'Content-Type': 'application/x-www-form-urlencoded' }
})


// http 拦截: 是在 axios 请求发出之前给每一个接口携带 token 去后端校验身份
// instance.interceptors.request.use(config => { 
//   let token = localStorage.getItem('token')
//   if(token) {
//     config.headers.Authorization = token
//   }
//   return config
// },
// err => {
//   return Promise.reject(err)
// })

// http 拦截：是在 axios 请求发出之后
// instance.interceptors.response.use(response => {
//   return response
// },
// error => {
//   if(error.response) {
//     let ERRS = error.response.status
//     let MSG = error.response.data.msg
//     let errdata = ERRS == 401 ? MSG : '服务器发生错误'
//     switch (ERRS) {
//       case 401:
//       // 没有访问权限，token 过期，没有携带 token 请求，token 错误
//       ElMessageBox.alert(errdata, '提示', {
//         confirmButtonText: '好的', 
//         type: "error"
//       })
//       .then(res => {
//         // 跳转到登录页面
//       })
//       .catch(err => {
        
//       })
//       break;
//     }
//   }
//   // 返回接口的错误信息
//   return Promise.reject(error.response.data)
// })

export default instance